home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / et / et-2_2.lha / et2.2 / src / AccessMem.h < prev    next >
C/C++ Source or Header  |  1990-12-06  |  1KB  |  41 lines

  1. #ifndef AccessMembers_First
  2. #ifdef __GNUG__
  3. #pragma once
  4. #endif
  5. #define AccessMembers_First
  6.  
  7. #include "Types.h"
  8. class Class;
  9. class Object;
  10.  
  11. //---- access the instance variables of an Object ---------------------------
  12.  
  13. class AccessMembers {
  14. protected:
  15.     AccessMembers();
  16.     //--- overridden to get access to instance variables
  17. public:
  18.     bool IsObjPtr(int type, Class *cl);
  19.     bool IsObjPtrVec(int type, Class*); 
  20.     Object *GetObject(Object *inObject, short offset, int type, Class *);
  21.     Object **GetObjPtrVec(Object *inObject, short offset, int type, Class *);
  22.     int GetLength(Object *inObject, short lenOrOffset, int type);
  23.  
  24.     virtual void Member(char *name, short offset, short lenOrOffset, int type, Class*);
  25.     virtual void ClassName(char *name); 
  26. };
  27.  
  28. //---- access Object* of an Object -------------------------------------------
  29.  
  30. class AccessObjPtrs: public AccessMembers {
  31. protected:
  32.     Object *inObject;
  33.     virtual void FoundPointer(Object *op, char*, int= -1);
  34. public:
  35.     AccessObjPtrs(Object *op= 0);
  36.     void ForObject(Object *op);
  37.     void Member(char *name, short offset, short offsetOrLen, int type, Class *cl);
  38. };    
  39.  
  40. #endif AccessMembers
  41.